/*-----------------------------------------------------------------------------------------
	Fonts
-----------------------------------------------------------------------------------------*/
@import url(http://fonts.googleapis.com/css?family=Merriweather:400,400italic,700,700italic);



/*-----------------------------------------------------------------------------------------
	Fancybox
-----------------------------------------------------------------------------------------*/
@import url(/js/fancybox/jquery.fancybox.css);



/*-----------------------------------------------------------------------------------------
	Custom scrollbars
-----------------------------------------------------------------------------------------*/
@import url("jquery.mCustomScrollbar.css");


/*-----------------------------------------------------------------------------------------
	Reset
-----------------------------------------------------------------------------------------*/
@import "reset.less";






/*-----------------------------------------------------------------------------------------
	Less variables
-----------------------------------------------------------------------------------------*/
@timestamp: ?v=20140116;
@links: #ffba00;
@body-copy: #2d2928;
@yellow: #ffba00;
@dark-brown: #242120;

@font-body: 'Merriweather', Georgia, serif;
@font-headings: 'Merriweather', Georgia, serif;

.bold {
	font-weight: bold;
}
.last-child {
	margin: 0;
	border: none;
	padding: 0;
}
.inline-block {
	display: inline-block;
	vertical-align: top;
	margin: 0 -4px 0 0;
	
//  IE7	
	zoom:1; *display:inline; 	
}
.sprite {
	display: inline-block;
	overflow: hidden;

	background-image: url('/images/sprites.png@{timestamp}');
	background-repeat: no-repeat;
	
	@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
		background-image: url('/images/sprites@2x.png@{timestamp}');
		background-size: 500px 500px;
	}
		
}
.glyph {
	display: block;
	text-indent: -5000px;
	
	background-image: url('/images/sprites.png@{timestamp}');
	background-repeat: no-repeat;
	
	@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
		background-image: url('/images/sprites@2x.png@{timestamp}');
		background-size: 500px 500px;
	}
	
}
.site-width {
	max-width: 1400px;
	margin: 0 auto;
}
.content-border {
    background: #FFFFFF;
    content: "";
    display: block;
    height: 3px;
    margin: 0 0 2em;
    width: 60%;
}
.panel-style {
	background: white;
	color: @body-copy;
	padding: 4em;
}
.section-padding {
	padding: 10em 6em 5em;	
}


/*-----------------------------------------------------------------------------------------
	Base
-----------------------------------------------------------------------------------------*/
* {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	*behavior: url('/js/boxsizing.htc'); /* IE7 */
}
html {
	font-size: 100%;
}
body {
	font-size: .9375em;
	line-height: 1.7;
	color: @body-copy;
	background: @body-copy;
	font-family: @font-body;
	background: #413D3C url('/images/bg.jpg') fixed center top;
	background-size: cover;
}
/*.wallpaper {
	position: fixed;
	height: 100%;
	background: #413D3C url('/images/bg.jpg') fixed center top;
	background-size: cover;
	width: 100%;
}*/
a {
	text-decoration: none;
	color: @links;
	transition: color .3s ease-in-out, background-color .3s ease-in-out, border .3s ease-in-out;
} 
h1,h2,h3,h4 {
	margin: 0 0 .5em;
	font-weight: 400;
	line-height: 1.4;
}
h1 {
	font-size: 4em;
	line-height: 1.1;
}
h2 {
	color: @yellow;
	font-style: italic;
	font-size: 1.5em;
}
:focus {
	outline: none;
}
p {
	margin: 0 0 1em;
}
p:last-child {
	margin: 0;
}
.img-left,
.img-right {
	float: left;
	width: 40%;
	margin: 1em 3em 3em 0;
}
.img-right {
	float: right;
	margin-left: 3em;
	margin-right: 0;
}
.img-center {
	display: block;
	margin: 0 auto 2em;
}
img {
    width: auto;
    max-width: 100%;
    height: auto;    
}
#map_canvas img { /* Fixes broken Google map controls */
	max-width: none;
}


hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 2px solid #e5e5e5;
    margin: 2em 0;
    padding: 0;
    clear: both;
}

.dummy-element { /* For smooth transforms */
	transform: scale(.8);
	backface-visibility: hidden; /* Removes Flash of white and other jankiness */		
	transition: all .4s cubic-bezier(0.680, -0.550, 0.265, 1.550);
}




/*-----------------------------------------------------------------------------------------
	Tables
-----------------------------------------------------------------------------------------*/
table {
	width: 100%;
}
th, td {
	text-align: left;
	padding: 1em;
	border-bottom: 1px solid #e5e5e5;
}
th {
	padding: .5em 1em;
}





/*-----------------------------------------------------------------------------------------
	Forms
-----------------------------------------------------------------------------------------*/
input, select, textarea {
	border: 1px solid #e5e5e5;
    border-radius: 0;
    color: @body-copy;
    padding: 1em;
    width: 100%;
    background: #fcfcfc;
	font-family: @font-body;
	transition: background .3s ease, box-shadow .3s ease;
}
select {
	box-shadow: none;
	height: auto;
	appearance: none;
	background: #fff url('/images/icon-select.png') right center no-repeat;
	cursor: pointer;
}
select:hover,
select:focus {
    background-color: #FAF5DF;
    border-color: #e4d38e;
    outline: none;
}
option:focus {
	outline: none;
}
textarea {
	height: 5em;
	}
input:hover, input:focus,
textarea:hover, textarea:focus {
	box-shadow: 0 1px 2px #E8DBA3 inset;
    background: #FAF5DF;
    border-color: #e4d38e;
    outline: none;
}	
label {
	display: block;
	.bold;
}
.orderValidationError,
.formValidationError,
label.error {
    background: @links;
    border-radius: 0 0 4px 4px;
    color: @body-copy;
    display: inline-block;
    line-height: normal;
    max-width: 90%;
    font-size: .9em;
    overflow: hidden;
    padding: 0.8em 1.2em;
	margin:  0 0 0 5px;
	font-weight: normal;
    width: auto;
}
form ul  {
	margin: 0;
	padding: 0;	
}
form li {
	margin: 0 0 20px;
	list-style-type: none;
	padding: 0;
}
form li:last-child {
	margin: 0;
}
.button,
.button:hover,
.button:focus {
	box-shadow: none;
	font-family: @font-headings;
	/*text-transform: uppercase;*/
	font-weight: bold;
    background-color: @yellow;
    border-radius: 20em;
    border: none;
    color: @body-copy;
    display: inline-block;
    padding: 1em 2em;
    margin: 0 .5em .5em;
    width: auto;
    line-height: 1;
    text-align: center;
    position: relative;
    transition: all .3s ease;
}

.button:hover,
.button:focus {
	background-color: darken(@yellow, 5%);
	border-color: lighten(@yellow, 10%);
}
.radio,
.checkbox {
	margin: 0 5px 0 0;
	width: auto;
	padding: 0;
	border: none;
	display: inline-block;
}





/*-----------------------------------------------------------------------------------------
	Layout
-----------------------------------------------------------------------------------------*/
.container {
	padding-top: 3em;
	padding-bottom: 20em;
}
.single .container {
	padding-bottom: 3em;
}
header {
	position: absolute;
	width: 100%;
	z-index: 7;
	top: -4em;
	/*top: -7em;*/
	transition: top .4s cubic-bezier(0.645, 0.045, 0.355, 1);
	
	.inner {
		margin-top: 4em;
	}
}
@media only screen and (min-width: 47.5em) { /* Fixed header only for 1024px and up */
	header.isStuck {
		background: white;
		position: fixed;
		top: 0;
		height: 3.7em;
		overflow: hidden;
		box-shadow: 0px 3px 5px rgba(0,0,0,.3);
		
		.inner {
			margin: 0;
		}
		.logo-motif {
			display: none;
		}
		.logo {
			margin-top: 0;
		}
		.mainnav {
			margin-top: 1.2em;
			
			a {
				color: @body-copy;	
				padding-bottom: .6em;	
				display: block;
				border-bottom: 5px solid white;
			}
			a:hover {
				color: @yellow;
			}
			.active a {
				color: @yellow;
				border-color: @yellow;
			}
			.menu-cart {
				.inline-block;
				margin: 0 1em 0 0;
				position: static;				
			}
		}		
	}
}
.menu-trigger {
	position: absolute;
	top: 8em
}
.logo {
	margin: 4.3em 2em 0 0;
	display: block;
	max-width: 314px;
	float: left;
	font-size: 1em;
}
.logo-motif {
	margin: 2.5em 2.5em 0 0;
	max-width: 130px;
	float: right;
}
.mainnav {
	margin: 5.3em 0 0 0;
	float: left;
	display: block;
	
	li {
		.inline-block;
		margin: 0 2em 0 0;
		position: relative;
		/*text-transform: uppercase;*/
	}
	a {
		color: #fff;
	}
	a:hover {
		color: @yellow;
	}
	.menu-cart {
		margin: 0;
	}
	.menu-cart a {
		.sprite;
		background-position: 0 2px;
		padding: 0 0 0 2.2em;
		text-transform: none;
		margin: 0 0 0 2em;
		font-size: .95em;		
		color: @yellow;
		
		.divider {
			color: #706663;
			margin: 0 .5em;
		}
	}
	.mobile-item {
		display: none;
	}
}
.mainnav-toggle {
	display: none;
}
.nav-toggle {
	.sprite;
	background-position: -100px -43px;
	padding-left: 1.5em;	
	margin: 0 2em 1em;
	display: none;
}
section {
	.section-padding;
}
section .inner {
	color: white;
	.site-width;
	overflow: hidden;
}
.panel .inner {
	.panel-style;
}


footer {
	z-index: 7;
	position: fixed;
	bottom: 0;
	width: 100%;
	color: #fff;
	font-size: .85em;
	padding: 1.5em 2em 1em;
	background: @dark-brown;
}
.copyright {
	float: right;
	
	a {
		color: #fff;
	}
}
.footer-nav {
	float: left;
	
	li {
		.inline-block;
		margin: 0 1em 0 0;
	}
	li:after {
		content: ".";
		margin: 0 0 0 1em;
	}
	li:last-child:after {
		display: none;
	}
}
.top-nav { 
	display: none;
}
	




/*-----------------------------------------------------------------------------------------
	Fancybox
-----------------------------------------------------------------------------------------*/
.modal-img {
	cursor: -webkit-zoom-in;
	cursor: -moz-zoom-in;
	cursor: zoom-in;
}
.fancybox-inner {
	cursor: auto;
}
.fancybox-outer {
	background: white;
}
.fancybox-overlay {
	cursor: -moz-zoom-out;
	cursor: -webkit-zoom-out;
	cursor: zoom-out;
}
.fancybox-close {
	/*display: none;*/
	position: absolute;
	top: 1em;
	right: -3em;
	background: white url('/images/modal-close.png') no-repeat center;
	width: 3em;
	height: 3em;
	opacity: .5;
	transition: opacity .2s ease;	
}
.fancybox-close:hover {
	opacity: 1;
}



/*-----------------------------------------------------------------------------------------
	Proportianl iframe embeds
-----------------------------------------------------------------------------------------*/
.video-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    margin: 0 0 2em;
    }
.video-container iframe,
.video-container object,
.video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}




/*-----------------------------------------------------------------------------------------
	Swiper styles
-----------------------------------------------------------------------------------------*/
.swiper-container {
	margin:0 auto;
	position:relative;
	overflow:hidden;
	-webkit-backface-visibility:hidden;
	-moz-backface-visibility:hidden;
	-ms-backface-visibility:hidden;
	-o-backface-visibility:hidden;
	backface-visibility:hidden;
	/* Fix of Webkit flickering */
	z-index:1;
}
.swiper-container * {
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;	
}
.swiper-wrapper {
	position:relative;
	width:100%;
	height: 38.5em;
	-webkit-transition-property:-webkit-transform, left, top;
	-webkit-transition-duration:0s;
	-webkit-transform:translate3d(0px,0,0);
	-webkit-transition-timing-function:ease;
	
	-moz-transition-property:-moz-transform, left, top;
	-moz-transition-duration:0s;
	-moz-transform:translate3d(0px,0,0);
	-moz-transition-timing-function:ease;
	
	-o-transition-property:-o-transform, left, top;
	-o-transition-duration:0s;
	-o-transform:translate3d(0px,0,0);
	-o-transition-timing-function:ease;
	-o-transform:translate(0px,0px);
	
	-ms-transition-property:-ms-transform, left, top;
	-ms-transition-duration:0s;
	-ms-transform:translate3d(0px,0,0);
	-ms-transition-timing-function:ease;
	
	transition-property:transform, left, top;
	transition-duration:0s;
	transform:translate3d(0px,0,0);
	transition-timing-function:ease;
}
.swiper-free-mode > .swiper-wrapper {
	-webkit-transition-timing-function: ease-out;
	-moz-transition-timing-function: ease-out;
	-ms-transition-timing-function: ease-out;
	-o-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
	margin: 0 auto;
}
.swiper-slide {
	float: left;
}

/* IE10 Windows Phone 8 Fixes */
.swiper-wp8-horizontal {
	-ms-touch-action: pan-y;
}
.swiper-wp8-vertical {
	-ms-touch-action: pan-x;
}



/*-----------------------------------------------------------------------------------------
	Menu active states
-----------------------------------------------------------------------------------------*/
.page-news .menu-news a,
.page-news header.fixed .menu-news a,

.page-wine .menu-wine a,
.page-wine header.fixed .menu-wine a,

.page-contact .menu-contact a,
.page-contact header.fixed .menu-contact a  {
	color: @yellow;
	border-color: @yellow;
}

/*-----------------------------------------------------------------------------------------
	Imports
-----------------------------------------------------------------------------------------*/
@import "page-specific.less";

@import "modal.less";	

@import "media-queries.less";	

@import "print.less";	

@import "ie.less";		